#ifndef _INCREMENTAL_ROTATION_H
#define _INCREMENTAL_ROTATION_H

#include "Animation.h"

class IncrementalRotation : public Animation
{
public:
    IncrementalRotation(TexturedEntity* entity, const float step, const float stepDelay, const Vector3& rotationAxes);
    virtual ~IncrementalRotation(void);

    void setStep(const float step) { m_step = step; }
    float step(void) const { return m_step; }

    void setStepDelay(const float stepDelay) { m_stepDelay = stepDelay; }
    float stepDelay(void) const { return m_stepDelay; }

private:
    float m_step;
    float m_timer;
    float m_stepDelay;
    Vector3 m_rotationAxes;

    void onUpdate(float dT);

};

#endif
